package com.example.conf.teea;


import com.baomidou.mybatisplus.annotation.*;
import com.example.conf.entity.SysAccountAttachFileEntity;
import com.gitee.sunchenbin.mybatis.actable.annotation.Column;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;


/**
 * <p>
 * 账户表
 * </p>
 *
 * @author wpdcn
 * @since 2020-01-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sys_account")
public class SysAccountEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @Column(comment = "主键id")
    @TableId
    private Long accountId;

    /**
     * 上级账户id
     */
    @Column(comment = "上级账户id")
    private Long parentAccountId;

    /**
     * 名称
     */
    @Column(comment = "名称")
    private String name;

    /**
     * 头像url
     */
    @Column(comment = "头像url")
    private String headImg;

    /**
     * 登录名
     */
    @Column(comment = "登录名")
    private String adminUsername;

    @Column(comment = "管理员用户id")
    @TableField(exist = false)
    private Long adminUserId;


    /**
     * 账户类型 1分销商；2物业；3门店；4供应商
     */
    @Column(comment = "账户类型 1分销商；2物业；3门店；4供应商")
    private Integer type;

    /**
     * 账户状态 1申请中；2已同意；3已拒绝；
     */
    @Column(comment = "账户状态 1申请中；2已同意；3已拒绝；")
    private Integer status;

    /**
     * 提现费率
     */
    @Column(comment = "提现费率")
    private Double withdrawRate;

    /**
     * 账户余额（单位分）
     */
    @Column(comment = "账户余额（单位分）")
    private Double balance;

    /**
     * 联系人
     */
    @Column(comment = "联系人")
    private String contacts;

    /**
     * 联系电话
     */
    @Column(comment = "联系电话")
    private String contactNumber;

    /**
     * 所属省份
     */
    @Column(comment = "所属省份id")
    private String provinceId;

    @Column(comment = "所属省份")
    @TableField(exist = false)
    private String provinceName;

    /**
     * 所属城市
     */
    @Column(comment = "所属城市id")
    private String cityId;

    @Column(comment = "所属城市")
    @TableField(exist = false)
    private String cityName;

    /**
     * 所属区县
     */
    @Column(comment = "区县id")
    private String areaId;

    @Column(comment = "区县名称")
    @TableField(exist = false)
    private String areaName;

    /**
     * 详细地址
     */
    @Column(comment = "详细地址")
    private String address;

    /**
     * 描述
     */
    @Column(comment = "描述")
    private String remarks;

    /**
     * 经度
     */
    @Column(comment = "经度")
    private String longitude;
    /**
     * 纬度
     */
    @Column(comment = "纬度")
    private String latitude;

    /**
     * 创建人
     */
    @Column(comment = "创建人")
    private Long createBy;


    @Column(comment = "创建人")
    @ApiModelProperty("创建人")
    @TableField(exist = false)
    private String createByName;

    /**
     * 创建时间
     */
    @Column(comment = "创建时间")
    private LocalDateTime createTime;

    /**
     * 审批人
     */
    @Column(comment = "审批人id")
    @ApiModelProperty("审批人id")
    private Long approvalId;

    @Column(comment = "审批人")
    @ApiModelProperty("审批人")
    @TableField(exist = false)
    private String approvalName;

    /**
     * 申请会员id
     */
    @Column(comment = "申请会员id")
    private String applyMemberId;

    @Column(comment = "审批会员名称")
    @TableField(exist = false)
    private String applyMemberName;

    /**
     * 删除标志
     */
    @Column(comment = "删除标志")
    @TableLogic
    private Integer delFlag;

    @Column(comment = "原因")
    private String reason;

    /**
     * logo图片url
     */
    @Column(comment = "logo图片url")
    private String logoImgUrl;

    @Column(comment = "版本号")
    @Version
    private Integer version;

    /**
     * 账户锁定状态：1-锁定；0-未锁定
     */
    @Column(comment = "账户锁定状态：1-锁定；0-未锁定")
    private Integer lockStatus;





}
